//#include <iostream>
//#include <vector>
//#include <algorithm>
//
//int main() 
//{
//    std::vector<int> vec = { 3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5 };
//    std::sort(vec.begin(), vec.end());
//    for (int num : vec) {
//        std::cout << num << " ";
//    }
//    std::cout << std::endl;
//    return 0;
//}

//#include <iostream>
//#include <vector>
//#include <algorithm>
//
//struct Person {
//    int age;
//    std::string name;
//};
//
//bool compareByAge(const Person& a, const Person& b) {
//    return a.age < b.age;
//}
//
//int main() {
//    std::vector<Person> people = { {25, "Alice"}, {20, "Bob"}, {25, "Charlie"} };
//    std::stable_sort(people.begin(), people.end(), compareByAge);
//    for (const auto& person : people) {
//        std::cout << person.name << " (" << person.age << ") ";
//    }
//    std::cout << std::endl;
//    return 0;
//}
//
//#include <iostream>
//#include <vector>
//#include <numeric>
//
//int main() {
//    std::vector<int> vec = { 1, 2, 3, 4, 5 };
//    int sum = std::accumulate(vec.begin(), vec.end(), 10);
//    std::cout << "Sum: " << sum << std::endl;
//    return 0;
//}

//#include <iostream>
//#include <vector>
//#include <algorithm>
//
//int main() {
//    std::vector<int> src = { 1, 2, 3, 4, 5 };
//    std::vector<int> dest(5);
//    std::copy(src.begin(), src.end(), dest.begin());
//    for (int num : dest) {
//        std::cout << num << " ";
//    }
//    std::cout << std::endl;
//    return 0;
//}

#include <iostream>
#include <vector>
#include <algorithm>

int main() {
    std::vector<int> vec = { 1, 2, 3, 2, 5 };
    std::replace(vec.begin(), vec.end(), 2, 10);
    for (int num : vec) {
        std::cout << num << " ";
    }
    std::cout << std::endl;
    return 0;
}